#pragma once
#include <string>

namespace ds {

class Service {

public:
	Service(const std::string& name);
	virtual ~Service();
	virtual void initialize() {}
	virtual void dispose() {}
	virtual void update(float elapsed) {}
	std::string getName() const { 
		return m_Name;
	}
	bool isActive() const { 
		return m_Active; 
	}
	void setActive(bool active) { 
		m_Active = active; 
	}
private:
	std::string m_Name;
	bool m_Active;
};

};

